---------------------------------------------------------------------- Сведения о работе с драйверами устройств MS-DOS в Microsoft Windows 95 Август 1995 ---------------------------------------------------------------------- (c) Microsoft Corporation, 1995 Этот документ содержит сведения, дополняющие документацию Microsoft Windows 95. -------------------------------- Как работать с данным документом -------------------------------- При просмотре файла Msdosdrv.txt на экране с помощью текстового редактора Блокнот разверните окно редактора до максимального размера. Чтобы напечатать файл Msdosdrv.txt, откройте его с помощью любого текстового редактора и воспользуйтесь командой "Печать" в меню "Файл". Везде в строках с синтаксисом команд строчные буквы обозначают подставляемые параметры, а прописные - текст, который должен вводиться без изменений. ПРИМЕЧАНИЕ. Дополнительные сведения о командах MS-DOS содержатся в файле Config.txt. Чтобы получить справку о команде MS-DOS, введите эту команду с ключом /?, например: CHKDSK /? ---------- Содержание ANSI.SYS DBLBUFF.SYS DISPLAY.SYS DRVSPACE.SYS, DBLSPACE.SYS EGA.SYS EMM386.EXE HIMEM.SYS RAMDRIVE.SYS SETVER.EXE -------- ANSI.SYS ========= Примечание. В этом разделе прописные буквы и последовательности ANSI обозначают текст, который должен вводиться без изменений. Этот драйвер работает с функциями, которые изменяют цвета на экране, управляют движением курсора и производят переназначение клавиш. Для управления экраном и клавиатурой драйвер ANSI.SYS поддерживает эмуляцию терминала ANSI. Использующиеся при этом последовательности ANSI представляют собой строки ASCII, начинающиеся с кода ESC (1Bh) и левой квадратной скобки (5Bh). Символы, следующие за ESC и скобкой, определяют код нужной функции. Следует учесть, что в последовательностях ANSI прописные и строчные буквы не считаются тождественными. В частности, буквы "A" и "a" несут совершенно разное значение. Драйвер ANSI.SYS загружается в память с помощью команды DEVICE или DEVICEHIGH в файле CONFIG.SYS. Синтаксис DEVICE=[диск:][путь]ANSI.SYS [/X] [/K] [/R] Параметр [диск:][путь] Путь к файлу ANSI.SYS. Ключи /X Независимое переназначение дополнительных клавиш на клавиатурах со 101 клавишей. /K Работа с клавиатурой, содержащей 101 клавишу, как 84-клавишной. Эквивалент команды SWITCHES=/K. Если команда SWITCHES=/K обычно используется, ключ /K придется указывать и для ANSI.SYS. /R Регулировка прокрутки, упрощающая чтение текста для людей с ослабленным зрением. Параметры, использующиеся в последовательностях ANSI: Pn Числовой параметр. Означает десятичное число. Ps Параметр, обозначающий десятичный номер нужной функции. Чтобы вызвать несколько функций, отделите параметры друг от друга с помощью точки с запятой (;). PL Параметр, обозначающий число строк на экране или другом устройстве как десятичное число. Pc Параметр, обозначающий число столбцов на экране или другом устройстве как десятичное число. Ниже приведены последовательности ANSI, использующиеся для перемещения курсора, а также управления экраном и клавиатурой. Во всех последовательностях ANSI аббревиатура ESC обозначает символ ASCII с кодом 27 (1Bh), который соответствует клавише ESC. ESC[PL;PcH Позиция курсора. Курсор перемещается в точку с указанными координатами. Если координаты не заданы, курсор перемещается в исходную позицию -- левый верхний угол экрана (строка 0, столбец 0). Это последовательность работает точно так же, как и следующая. ESC[PL;Pcf Позиция курсора. Эта последовательность работает точно так же, как и предыдущая. ESC[PnA Перемещение курсора вверх на указанное количество строк в пределах одного и того же столбца. Если курсор уже находится вверху экрана, последовательность просто игнорируется. ESC[PnB Перемещение курсора вниз на указанное количество строк в пределах одного и того же столбца. Если курсор уже находится внизу экрана, последовательность просто игнорируется. ESC[PnC Перемещение курсора вправо на указанное количество столбцов в пределах одной и той же строки. Если курсор уже находится на правом краю экрана, последовательность просто игнорируется. ESC[PnD Перемещение курсора влево на указанное количество столбцов в пределах одной и той же строки. Если курсор уже находится на левом краю экрана, последовательность просто игнорируется. ESC[s Сохранение текущей позиции курсора. Предусмотрена специальная последовательность, возвращающая курсор в точку с сохраненными координатами. ESC[u Восстановление позиции курсора, сохраненной с помощью предыдущей команды. ESC[2J Очистка экрана с возвратом курсора в исходную позицию(0, 0). ESC[K Очистка текущей строки, начиная от позиции курсора включительно. ESC[Ps;...;Psm Выбор графического режима (см. таблицу). Выбранный режим действует вплоть до выдачи следующей подобной команды. Команды работы с графикой изменяют цвет текста и его атрибуты (полужирный, подчеркивание). Атрибуты текста 0 Сброс всех атрибутов 1 Полужирный 4 Подчеркнутый (только для монохромных мониторов) 5 Мерцающий 7 Инвертированный 8 Невидимый Цвет текста 30 Черный 31 Красный 32 Зеленый 33 Желтый 34 Синий 35 Лиловый 36 Голубой 37 Белый Цвет фона 40 Черный 41 Красный 42 Зеленый 43 Желтый 44 Синий 45 Лиловый 46 Голубой 47 Белый Параметры с 30 до 47 соответствуют стандарту ISO 6429. ESC[=psh Установка режима работы экрана. 0 40 x 148 x 25 монохромный текстовый 1 40 x 148 x 25 цветной текстовый 2 80 x 148 x 25 монохромный текстовый 3 80 x 148 x 25 цветной текстовый 4 320 x 148 x 200 четырехцветный графический 5 320 x 148 x 200 монохромный графический 6 640 x 148 x 200 монохромный графический 7 Включение переноса данных на следующую строку 13 320 x 148 x 200 цветной графический 14 640 x 148 x 200 цветной графический (16 цветов) 15 640 x 148 x 350 монохромный графический (2 цвета) 16 640 x 148 x 350 цветной графический (16 цветов) 17 640 x 148 x 480 монохромный графический (2 цвета) 18 640 x 148 x 480 цветной графический (16 цветов) 19 320 x 148 x 200 цветной графический (256 цветов) ESC[=Psl Сброс режима, установленного с помощью предыдущей команды. Завершает последовательность является строчная буква L. ESC[код;строка;...p Назначение клавише символа или строки. Параметры последовательности задаются следующим образом. o Код представляет собой одно или несколько значений из приведенной ниже таблицы. Все эти значения представляют клавиши и их сочетания. Присутствующие в таблице символы точки с запятой (;) являются неотъемлемыми частями значений. Помещенные в скобки коды на некоторых клавиатурах использоваться не могут. Драйвер ANSI.SYS будет интерпретировать их только при наличии в командной строке ключа /X. o Строка представляет либо код ASCII одиночного символа, либо строку в кавычках ("). Например, оба варианта 65 и "A" соответствуют прописной латинской букве A. ВНИМАНИЕ. На некоторых компьютерах часть приведенных в таблице кодов действовать не будет. Обратитесь к документации компьютера. Клавиша Код SHIFT+код CTRL+код ALT+код --------------------------------------------------------------------------- F1 0;59 0;84 0;94 0;104 F2 0;60 0;85 0;95 0;105 F3 0;61 0;86 0;96 0;106 F4 0;62 0;87 0;97 0;107 F5 0;63 0;88 0;98 0;108 F6 0;64 0;89 0;99 0;109 F7 0;65 0;90 0;100 0;110 F8 0;66 0;91 0;101 0;111 F9 0;67 0;92 0;102 0;112 F10 0;68 0;93 0;103 0;113 F11 0;133 0;135 0;137 0;139 F12 0;134 0;136 0;138 0;140 HOME (цифровая панель) 0;71 55 0;119 -- UP ARROW (цифровая панель)0;72 56 (0;141) -- PAGE UP (цифровая панель) 0;73 57 0;132 -- LEFT ARROW (цифровая 0;75 52 0;115 -- панель) RIGHT ARROW (цифровая 0;77 54 0;116 -- панель) END (цифровая панель) 0;79 49 0;117 -- DOWN ARROW (цифровая 0;80 50 (0;145) -- панель) PAGE DOWN (цифровая 0;81 51 0;118 -- панель) INSERT (цифровая панель) 0;82 48 (0;146) -- DELETE (цифровая панель) 0;83 46 (0;147) -- HOME (224;71) (224;71) (224;119) (224;151) UP ARROW (224;72) (224;72) (224;141) (224;152) PAGE UP (224;73) (224;73) (224;132) (224;153) LEFT ARROW (224;75) (224;75) (224;115) (224;155) RIGHT ARROW (224;77) (224;77) (224;116) (224;157) END (224;79) (224;79) (224;117) (224;159) DOWN ARROW (224;80) (224;80) (224;145) (224;154) PAGE DOWN (224;81) (224;81) (224;118) (224;161) INSERT (224;82) (224;82) (224;146) (224;162) DELETE (224;83) (224;83) (224;147) (224;163) PRINT SCREEN -- -- 0;114 -- PAUSE/BREAK -- -- 0;0 -- BACKSPACE 8 8 127 (0) ENTER 13 -- 10 (0 TAB 9 0;15 (0;148) (0;165) NULL 0;3 -- -- -- A 97 65 1 0;30 B 98 66 2 0;48 C 99 66 3 0;46 D 100 68 4 0;32 E 101 69 5 0;18 F 102 70 6 0;33 G 103 71 7 0;34 H 104 72 8 0;35 I 105 73 9 0;23 J 106 74 10 0;36 K 107 75 11 0;37 L 108 76 12 0;38 M 109 77 13 0;50 N 110 78 14 0;49 O 111 79 15 0;24 P 112 80 16 0;25 Q 113 81 17 0;16 R 114 82 18 0;19 S 115 83 19 0;31 T 116 84 20 0;20 U 117 85 21 0;22 V 118 86 22 0;47 W 119 87 23 0;17 X 120 88 24 0;45 Y 121 89 25 0;21 Z 122 90 26 0;44 1 49 33 -- 0;120 2 50 64 0 0;121 3 51 35 -- 0;122 4 52 36 -- 0;123 5 53 37 -- 0;124 6 54 94 30 0;125 7 55 38 -- 0;126 8 56 42 -- 0;126 9 57 40 -- 0;127 0 48 41 -- 0;129 - 45 95 31 0;130 = 61 43 --- 0;131 [ 91 123 27 0;26 ] 93 125 29 0;27 92 124 28 0;43 ; 59 58 -- 0;39 ' 39 34 -- 0;40 , 44 60 -- 0;51 . 46 62 -- 0;52 / 47 63 -- 0;53 ` 96 126 -- (0;41) ENTER (цифровая панель) 13 -- 10 (0;166) / (цифровая панель) 47 47 (0;142) (0;74) * (цифровая панель) 42 (0;144) (0;78) -- - (цифровая панель) 45 45 (0;149) (0;164) + (цифровая панель) 43 43 (0;150) (0;55) 5 (цифровая панель) (0;76) 53 (0;143) -- DBLBUFF.SYS -- двойная буферизация ================================== Драйвер Dblbuff.sys производит двойную буферизацию, необходимую для некоторых контроллеров жестких дисков, которые не могут работать с памятью, предоставляемой драйвером EMM386 или Windows в защищенном режиме 386. Если программа установки Windows обнаружит, что системе необходима двойная буферизация, в раздел [Options] файла Msdos.sys автоматически будет добавлена строка DoubleBuffer=1, загружающая драйвер Dblbuff.sys. Чтобы включить двойную буферизацию самостоятельно, следует вручную поместить указанную строку в файл Msdos.sys или добавить в файл CONFIG.SYS соответствующую команду DEVICE. Синтаксис DEVICE=[диск:][путь]DBLBUFF.SYS [/D+] Параметры [диск:][путь] Путь к файлу Dblbuff.sys. /D+ Этот параметр переводит драйвер Dblbuff.sys в режим постоянной двойной буферизации всех операций ввода/вывода. По умолчанию же буферизуется лишь ввод/вывод для области верхней памяти (UMB), и то лишь при необходимости. DISPLAY.SYS =========== Этот драйвер позволяет отображать символы из алфавитов, отличных от латиницы, на жидкокристаллических экранах переносных компьютеров, а также мониторах EGA и VGA. Его загрузка производится с помощью команды DEVICE или DEVICEHIGH в файле CONFIG.SYS. Синтаксис DEVICE=[диск:][путь]DISPLAY.SYS CON[:]=(тип[,[hwcp][,n]]) DEVICE=[диск:][путь]DISPLAY.SYS CON[:]=(тип[,[hwcp][,(n,m)]]) Параметры [диск:][путь] Путь к файлу DISPLAY.SYS. тип Тип используемого видеоадаптера. Он может принимать одно из двух значений: EGA и LCD. Значение EGA используется для обоих видеоадаптеров EGA и VGA. Если этот параметр опущен, драйвер DISPLAY.SYS попытается определить тип видеоадаптера самостоятельно. Использование значений CGA и MONO не приведет к синтаксическим ошибкам, однако не имеет смысла, так как использование различных наборов символов для этих типов видеоадаптеров не поддерживается. hwcp Номер аппаратно поддерживаемого набора символов. Ниже перечислены основные наборы символов , поддерживаемые MS-DOS, и соответствующие им языки (регионы). 437 США 850 Многоязыковый (латиница I) 852 Восточная и центральная Европа (латиница II) 860 Португальский 863 Канадско-французский 865 Северная Европа Использование файлов EGA2.CPI и EGA3.CPI позволяет воспользоваться дополнительными наборами символов, включая поддержку кириллицы (EGA3.CPI). n Число дополнительных наборов символов, с которыми может работать видеоадаптер, кроме набора, указанного в параметре hwcp. Допустимые значения параметра n лежат в диапазоне от 0 до 6. Для видеоадаптеров EGA максимальное значение n равно 6; для жидкокристаллических дисплеев (LCD) максимальное значение n равно 1. m Число вариантов шрифтов, поддерживаемое аппаратно для каждой из кодовых страниц. Для типа EGA по умолчанию используется значение 2, а для типа LCD - 1. DRVSPACE.SYS, DBLSPACE.SYS ========================== Этот драйвер управляет размещением в памяти драйверов DRVSPACE.BIN и DBLSPACE.BIN, обеспечивающих доступ к уплотненным дискам. Драйвер DxxSPACE.SYS позволяет загрузить драйвер реального режима в верхнюю область памяти. Это позволяет сэкономить около 60 Кбайт обычной памяти при работе с Windows 95 в реальном режиме и более 100 Кбайт при использовании пакета Microsoft Plus! для Windows. При загрузке компьютера Windows загружает один из драйверов DRVSPACE.BIN или DBLSPACE.BIN в память одновременно с другими системными файлами, до выполнения команд из файлов CONFIG.SYS и AUTOEXEC.BAT. При этом драйвер DxxSPACE.BIN исходно загружается в обычную память, так как во время его загрузки драйверы для доступа к верхней области памяти недоступны. При создании уплотненного диска с помощью программы DriveSpace или DoubleSpace в файл CONFIG.SYS помещается ссылка на DxxSPACE.SYS. Вместо DxxSPACE в приведенные ниже строки следует подставлять правильное название драйвера. Синтаксис DEVICE=[диск:][путь]DxxSPACE.SYS /MOVE [/NOHMA] [/LOW] DEVICEHIGH=[диск:][путь]DxxSPACE.SYS /MOVE [/NOHMA] [/LOW] Ключи /MOVE Окончательно перемещение драйвера DxxSPACE.BIN в верхнюю память. Исходно драйвер DxxSPACE.BIN загружается в последние сегменты обычной памяти. После завершения выполнения команд из файла CONFIG.SYS драйвер DxxSPACE.BIN перемещается в начальные сегменты обычной памяти. Загрузка драйвера DxxSPACE.SYS с помощью команды DEVICE позволяет произвести указанное перемещение драйвера DxxSPACE.BIN из последних сегментов обычной памяти в первые явным образом. Это помогает избежать конфликтов с другими программами, которые также загружаются в файле CONFIG.SYS и нуждаются в доступе к старшим адресам обычной памяти. Загрузка драйвера DxxSPACE.SYS с помощью команды DEVICEHIGH позволяет переместить драйвер DxxSPACE.BIN в верхнюю область памяти, если она доступна. При этом освобождается значительное количество обычной памяти. /NOHMA Предотвращение перемещение части драйвера DxxSPACE.BIN в сегмент (HMA). Если MS-DOS загружается в сегмент HMA, драйвер DxxSPACE.SYS перемещает часть DxxSPACE.BIN в сегмент HMA (если там достаточно места). Данный ключ запрещает использование для DxxSPACE.BIN места в сегменте HMA. /LOW Предотвращение загрузки драйвера DxxSPACE.SYS в старшие сегменты обычной памяти. Этот ключ необходим при наличии программы MS-DOS, которая не может работать, если DriveSpace или DoubleSpace находится в старших сегментах обычной памяти. Следует учесть, что в этом режиме память, занятая драйвером DxxSPACE.sys, будет недоступна Windows. Параметр [диск:][путь] Путь к файлу DxxSPACE.SYS. EGA.SYS ======= Этот драйвер сохраняет, а затем восстанавливает состояние экрана при использовании оболочки MS-DOS Shell Task Swapper совместно с мониторами EGA. При работе с монитором EGA драйвер EGA.SYS следует загружать до Task Swapper. Для этого используется команда DEVICE или DEVICEHIGH в файле CONFIG.SYS. Синтаксис DEVICE=[диск:][путь]EGA.SYS Параметры [диск:][путь] Путь к файлу EGA.SYS. EMM386.EXE ========== Этот драйвер открывает доступ к верхней области памяти, а также эмулирует отображаемую память с помощью дополнительной. Он загружается с помощью команды DEVICE в файле CONFIG.SYS и может использоваться только на компьютерах с процессором 80386 или более поздней модели. Для программ, использующих отображаемую память, EMM386 эмулирует ее с помощью дополнительной памяти. EMM386 позволяет также загружать программы и драйверы устройств в верхнюю область памяти (UMB). Синтаксис DEVICE=[диск:][путь]EMM386.EXE [ON|OFF|AUTO] [память] [MIN=размер] [W=ON|W=OFF] [Mx|FRAME=адрес|/Pmmmm] [Pn=адрес] [X=mmmm-nnnn] [I=mmmm-nnnn] [B=адрес] [L=minXMS] [A=наборы] [H=дескрипторы] [D=nnn] [RAM=mmmm-nnnn] [NOEMS] [NOVCPI] [HIGHSCAN] [VERBOSE] [WIN=mmmm-nnnn] [NOHI] [ROM=mmmm-nnnn] [NOMOVEXBDA] [ALTBOOT] [NOBACKFILL] Параметры [диск:][путь] Путь к файлу EMM386.EXE. [ON|OFF|AUTO] Выбор режима работы EMM386. Параметр ON включает драйвер. Параметр OFF отключает EMM386, а параметр AUTO переводит его в автоматический режим работы. В автоматическом режиме поддержка отображаемой памяти и верхней области памяти включается лишь по запросу программ. По умолчанию используется значение ON. После загрузки драйвера EMM386 изменить это значение позволяет команда EMM386. память Максимальный объем дополнительной памяти (в килобайтах), которая должна использоваться для эмуляции отображаемой (EMS) или VCPI (Virtual Control Program Interface) памяти. Эта величина может варьироваться в пределах от 64 до 32768 Кбайт, либо соответствовать объему дополнительной памяти, доступной при загрузке EMM386. По умолчанию используется вся доступная дополнительная память. Ключ NOEMS запрещает эмуляцию отображаемой памяти и соответствует значению 0. EMM386 всегда округляет указанный объем памяти до числа, кратного 16. Ключи MIN=размер Минимальный объем памяти EMS/VCPI (в килобайтах), который будет эмулировать драйвер EMM386. Соответствующий объем дополнительной памяти будет зарезервирован при загрузке EMM386. Полный доступный объем памяти EMS/VCPI может быть и больше (верхний предел определяется параметром "память"). Он определяется количеством памяти XMS, доступным на момент обращения программы к памяти EMS/VCPI. По умолчанию для данного параметра используется значение 256. Ключ NOEMS запрещает эмуляцию отображаемой памяти и соответствует значению 0. Если значение MIN превышает значение параметра "память", EMM386 будет использовать значение MIN. W=ON|W=OFF Включение или отключение поддержки сопроцессора Weitek. По умолчанию W=OFF. Mx Адрес области страничного обмена. Значение x может лежать в диапазоне от 1 до 14. Соответствие между различными значениями x и шестнадцатеричными адресами памяти иллюстрирует таблица: 1 => C000h 8 => DC00h 2 => C400h 9 => E000h 3 => C800h 10 => 8000h 4 => CC00h 11 => 8400h 5 => D000h 12 => 8800h 6 => D400h 13 => 8C00h 7 => D800h 14 => 9000h Значения с 10 до 14 могут использоваться только на компьютерах с 512 Кбайт обычной памяти. FRAME=адрес Явный выбор сегмента для области страничного обмена. Допустимые значения адреса лежат в диапазонах от 8000h до 9000h и от C000h до E000h, с шагом 400h. Обеспечить эмуляцию отображаемой памяти и отключить область страничного обмена позволяет значение FRAME=NONE. Однако при таком выборе некоторые программы, использующие отображаемую память, будут работать неправильно. /Pmmmm Адрес области страничного обмена. Допустимые значения mmmm лежат в диапазонах от 8000h до 9000h и от C000h до E000h, с шагом 400h. Pn=адрес Адрес сегмента для конкретной страницы. Здесь n обозначает номер страницы, а адрес - адрес сегмента. Допустимые значения n лежат в интервале от 0 до 255. Допустимые значения адреса лежат в диапазонах от 8000h до 9000h и от C000h до E000h, с шагом 400h. Адреса страниц с 0 по 3 должны следовать строго друг за другом, чтобы обеспечить совместимость с версией 3.2 спецификации отображаемой памяти Lotus/Intel/Microsoft(LIM EMS). При использовании ключа Mx, FRAME или /Pmmmm, адреса страниц с 0 по 3 нельзя использовать в качестве значения для параметра /Pmmmm. X=mmmm-nnnn Этот параметр делает указанные области памяти недоступными для страниц EMS и загрузки программ. Значения mmmm и nnnn должны лежать в диапазоне от A000h до FFFFh и округляются с точностью до 4 Кбайт. Ключ X имеет приоритет над ключом I, если соответствующие диапазоны перекрываются. I=mmmm-nnnn Этот параметр явным образом делает указанные области памяти доступными для страниц EMS и загрузки программ. Значения mmmm и nnnn должны лежать в диапазоне от A000h до FFFFh и округляются с точностью до 4 Кбайт. Ключ X имеет приоритет над ключом I, если соответствующие диапазоны перекрываются. B=адрес Минимальный адрес сегмента, предназначенного для подкачки при работе с памятью EMS (подкачка производится с помощью страниц размером 16 Кбайт). Допустимые значения лежат в диапазоне от 1000h до 4000h. По умолчанию используется значение 4000h. l=minXMS Этот параметр позволяет оставить указанный объем дополнительной памяти (в килобайтах) свободным после загрузки EMM386. По умолчанию его значение равно 0. A=наборы Количество альтернативных наборов быстрых регистров, отведенных для работы EMM386. Эти наборы используются для реализации многозадачности. Допустимое значение лежит в пределах от 0 до 254. По умолчанию используется значение 7. Каждый набор увеличивает занятую EMM386 память на 200 байт. H=дескрипторы Число дескрипторов, которые может использовать EMM386. Допустимое значение лежит в пределах от 2 до 255. По умолчанию используется значение 64. D=nnn Размер области памяти (в килобайтах), зарезервированной для операций прямого доступа к памяти (DMA). Это значение должно соответствовать предельному размеру данных, переданных через прямой обмен DMA в процессе работы EMM386. Допустимые значения nnn лежат в диапазоне от 16 до 256. По умолчанию используется значение 32. RAM=mmmm-nnnn Включение поддержки памяти EMS и указание диапазона адресов сегментов, использующихся для верхней области памяти. Если диапазон не задан, EMM386 использует под верхнюю область памяти и область обмена EMS всю доступную память. NOEMS Этот параметр открывает доступ к верхней области памяти, однако запрещает эмуляцию отображаемой памяти (EMS). NOVCPI Этот параметр блокирует поддержку программ, использующих протокол VCPI. Он может использоваться только совместно ключом NOEMS. В противном случае поддержка VCPI отключена не будет. Если заданы оба указанных ключа, EMM386 игнорирует параметр "память" и ключ MIN. Отказ от поддержки протокола VCPI уменьшает занятый объем дополнительной памяти. HIGHSCAN Этот параметр заставляет EMM386 произвести дополнительную проверку с целью выявления памяти, которую можно отвести под блоки верхней памяти (UMB) и область страничного обмена EMS. На некоторых компьютерах данный параметр не работает или заставляет EMM386 посчитать доступными области памяти, таковыми не являющиеся. Это может привести к "зависанию" компьютера. VERBOSE Этот ключ позволяет вывести на экран подробный отчет о загрузке EMM386. По умолчанию EMM386 выводит на экран только сообщения об ошибках. Само название ключа VERBOSE можно сократить до V. (Чтобы отображать сообщения, сопровождающие загрузку EMM386, можно также заранее нажать и удерживать клавишу ALT.) WIN=mmmm-nnnn Резервирование указанного диапазона сегментов для Windows вместо EMM386. Допустимые значения mmmm и nnnn лежат в диапазоне от A000h до FFFFh и округляются с точностью до 4 Кбайт. Ключ X имеет преимущество перед ключом WIN, если оба диапазона накладываются. В свою очередь в аналогичных условиях ключ WIN имеет преимущество перед ключами RAM, ROM и I. [NOHI] Запрет на загрузку EMM386 в верхнюю область памяти, которая производится по умолчанию. Этот ключ позволяет увеличить размер верхней области памяти (UMB) за счет сокращения обычной памяти. [ROM=mmmm-nnnn] Диапазон адресов сегментов, которые EMM386 использует для дублирования данных из ПЗУ (ROM). Допустимые значения mmmm и nnnn лежат в диапазоне от A000h до FFFFh и округляются с точностью до 4 Кбайт. Использование этого ключа может ускорить работу системы, если копирование данных из ПЗУ в ОЗУ не производится аппаратно. [NOMOVEXBDA] Этот ключ запрещает перемещение расширения BIOS из обычной памяти в верхнюю. [ALTBOOT] Этот ключ заставляет EMM386 использовать другой обработчик для сочетания клавиш CTRL+ALT+DEL. Он необходим лишь в том случае, если в процессе загрузки EMM386 компьютер не реагирует на сочетание CTRL+ALT+DEL или неверно обрабатывает его. [NOBACKFILL] Если драйвер EMM386 настроен на организацию доступа к верхней памяти (с помощью ключей NOEMS или RAM), он также автоматически наращивает объем доступной обычной памяти до 640 Кбайт, если ее реальный размер меньше. Однако Windows не поддерживает работу с программно наращенной обычной памятью, поэтому ключ NOBACKFILL обязательно использовать, если фактический объем обычной памяти меньше 640 Кбайт. HIMEM.SYS ========= HIMEM представляет собой диспетчер дополнительной памяти, т.е. программу, управляющую доступом к дополнительной памяти и сегменту HMA. HIMEM, в частности, не позволяет двум программам или драйверам одновременно обращаться к одной и той же области дополнительной памяти. Запуск HIMEM производится с помощью команды DEVICE в файле CONFIG.SYS. Командная строка, содержащая HIMEM.SYS, должна предшествовать всем строкам, в которых запускаются программы и драйверы, использующие дополнительную память. Например, запуск HIMEM.SYS должен предшествовать запуску EMM386.EXE. Синтаксис DEVICE=[диск:][путь]HIMEM.SYS [/A20CONTROL:ON|OFF] [/CPUCLOCK:ON|OFF] [/EISA] [/HMAMIN=m] [/INT15=xxxx] [/MACHINE:xxxx] [/NOABOVE16] [/NOEISA] [/NUMHANDLES=n] [/SHADOWRAM:ON|OFF] [/TESTMEM:ON|OFF] [/VERBOSE] [/X] В большинстве случаев задавать параметры в командной строке не требуется, так как используемые по умолчанию значения годятся практически для всех компьютеров. Параметр [диск:][путь] Путь к файлу HIMEM.SYS. Файл HIMEM.SYS должен находиться на том же диске, что и файлы MS-DOS. Если он присутствует в корневом каталоге загрузочного диска, путь указывать не нужно. Однако имя файла (HIMEM.SYS) всегда следует указывать полностью. Ключи /A20CONTROL:ON|OFF Этот ключ определяет, берет ли HIMEM на себя управление линией A20. Обработчик A20 дает компьютеру доступ к сегменту HMA. Когда используется значение /A20CONTROL:OFF, HIMEM берет на себя управление линией A20 лишь в случае, если эта линия была отключена при загрузке HIMEM. По умолчанию используется значение /A20CONTROL:ON. /CPUCLOCK:ON|OFF Этот параметр определяет, должен ли драйвер HIMEM управлять работой часов компьютера. Выбор значения /CPUCLOCK:ON может иногда помочь в случае, если загрузка HIMEM влечет за собой замедление работы часов компьютера. При этом, однако, замедляется работа самого драйвера HIMEM. По умолчанию используется значение /CPUCLOCK:OFF. /EISA Этот ключ заставляет драйвер HIMEM занять всю дополнительную память. Он необходим только на компьютерах с шиной EISA (Extended Industry Standard Architecture), оснащенных более чем 16 Мбайт ОЗУ. На других компьютерах HIMEM принимает управление всей памятью автоматически. /HMAMIN=m Минимальный объем памяти (в килобайтах), который программа должна запрашивать для получения доступа к сегменту HMA. Дело в том, что сегмент HMA может одновременно использоваться только одной программой. Если эта программа занимает мало памяти, его использование окажется неэффективным. Драйвер HIMEM выделяет сегмент HMA первой же программе, которой требуется больше памяти, чем задано в данном параметре. Значение m должно лежать в пределах от 0 до 63. Значение /HMAMIN должно соответствовать требованиям программы, которая использует наибольшее количество памяти в сегменте HMA. Ключ /HMAMIN не является обязательным. По умолчанию значение m равно 0. Это означает, что сегмент HMA будет занят первой же программой, обратившейся к нему, независимо от ее размера и требований к памяти. При работе Windows в расширенном режиме процессора 386 значение /HMAMIN роли не играет. /INT15=xxxx Резервирование указанного количества дополнительной памяти (в килобайтах) для работы интерфейсов, использующих прерывание Int 15h. В основном это относится к старым программам, которые вместо обращения к памяти XMS (eXtended-Memory Specification), предоставляемой драйвером HIMEM, работают через интерфейс, использующий прерывание Int 15h. При загрузке таких программ значение xxxx должно превышать объем памяти, требующийся программе, как минимум на 64 Кбайт. Значение xxxx может лежать в диапазоне от 64 до 65535, однако не должно превышать реального объема дополнительной памяти. По умолчанию используется значение 0. Все значения меньше 64 также приравниваются к 0. /MACHINE:xxxx Тип компьютера. Как правило, драйверу HIMEM удается определить тип компьютера автоматически. Существуют, однако компьютеры, для которых автоматическое определение не работает. В этом случае HIMEM использует значение по умолчанию (IBM AT или совместимый компьютер). Ключ /MACHINE требуется применять лишь в том случае, если HIMEM не удается определить тип компьютера автоматически, а в работе драйвера наблюдаются ошибки. На данный момент известно, что явным образом следует указывать тип для компьютеров Acer 1100, Wyse и IBM 7552. xxxx может принимать любое из перечисленных в таблице значений. Следует указать либо сам код типа, либо его номер. Код Номер Тип компьютера --------------------------------------------------------------------------- at 1 IBM AT или 100%-совместимый компьютер ps2 2 IBM PS/2 ptlcascade 3 Phoenix Cascade BIOS hpvectra 4 HP Vectra (A и A+) att6300plus 5 AT&T 6300 Plus acer1100 6 Acer 1100 toshiba 7 Toshiba 1600 и 1200XE wyse 8 Wyse 12.5 Мгц 286 tulip 9 Tulip SX zenith 10 Zenith ZBIOS at1 11 IBM PC/AT (альтернативная задержка) at2 12 IBM PC/AT (альтернативная задержка) css 12 CSS Labs at3 13 IBM PC/AT (альтернативная задержка) philips 13 Philips fasthp 14 HP Vectra ibm7552 15 IBM 7552 Industrial Computer bullmicral 16 Bull Micral 60 dell 17 Dell XBIOS /NOABOVE16 Запрет на применение поддержки Compaq Bigmem, работающей через прерывание INT 15h (ax==E801h) и использующейся для просмотра дополнительной памяти. /NOEISA Запрет на поиск дополнительной памяти в режиме EISA. /NUMHANDLES=n Предельное число одновременно использующихся дескрипторов дополнительных блоков памяти (EMB). Оно может лежать в пределах от 1 до 128. По умолчанию используется значение 32. Каждый добавочный дескриптор занимает 6 байт памяти. При работе Windows в защищенном режиме процессора 386 ключ /NUMHANDLES игнорируется. /SHADOWRAM:ON|OFF Этот ключ позволяет отменить (SHADOWRAM:OFF) или сохранить (SHADOWRAM:ON) копирование данных из ПЗУ в ОЗУ. На некоторых компьютерах ускорение работы программ из ПЗУ достигается за счет их копирования в более быструю оперативную память (ОЗУ). Если компьютер оборудован менее чем 2 Мбайт ОЗУ, HIMEM обычно пытается отменить дублирование ПЗУ в ОЗУ, чтобы освободить дополнительную память для работы Windows. (Эту операцию удается произвести не на любом компьютере.) В результате работа программ из ПЗУ, а, следовательно, и всего компьютера в целом несколько замедляется. /TESTMEM:ON|OFF Этот параметр управляет проверкой памяти при загрузке HIMEM. По умолчанию драйвер HIMEM проверяет надежность работы памяти при каждом запуске компьютера. Эта проверка позволяет выявить неисправные блоки памяти, которые в ходе работы могут вызвать потерю данных. Проверка, выполняемая HIMEM, является более полной, нежели стандартный аппаратный тест, выполняемый большинством компьютеров при загрузке. Отменить проверку памяти и, тем самым, несколько ускорить загрузку позволяет значение /TESTMEM:OFF. По умолчанию используется значение /TESTMEM:ON. VERBOSE Этот ключ позволяет вывести на экран подробный отчет о загрузке HIMEM. По умолчанию HIMEM выводит на экран только сообщения об ошибках. Само название ключа VERBOSE можно сократить до V. (Чтобы отображать сообщения, сопровождающие загрузку EMM386, можно также заранее нажать и удерживать клавишу ALT.) /X Запрет на использование прерывания INT 15h (ax==E820h) при обращении к дополнительной памяти. RAMDRIVE.SYS ============ Этот драйвер использует часть памяти компьютера для эмуляции дополнительного жесткого диска. Он загружается в память с помощью команды DEVICE или DEVICEHIGH в файле CONFIG.SYS. Электронные диски работают значительно быстрее, чем жесткие. Их поведение ничем не отличается от поведения жестких дисков, за исключением одной очень важной детали. При выключении или перезагрузке компьютера все данные, находящиеся на электронном диске, пропадают. Количество создаваемых электронных дисков не ограничено. Они могут занимать всю доступную память компьютера целиком. Каждому из электронных дисков должна соответствовать отдельная строка в файле CONFIG.SYS. Синтаксис DEVICE=[диск:][путь]RAMDRIVE.SYS [РазмерДиска РазмерСектора [ЧислоЭлементов]]] [/E | /A] Параметры [диск:][путь] Путь к файлу RAMDRIVE.SYS. РазмерДиска Объем памяти, отведенный под электронный диск. Например, чтобы диск имел объем 640 Кбайт, укажите размер 640. По умолчанию под электронный диск отводится 64 Кбайт ОЗУ. Допустимые значения лежат в диапазоне от 4 до 32767. При этом указанный размер диска не должен превышать реально доступный объем памяти. РазмерСектора Размер сектора электронного диска в байтах. Он может быть равен 128, 256 или 512. (Размер сектора нельзя задать, не указав при этом размера диска.) Как правило, рекомендуется использовать значение по умолчанию (512 байт). ЧислоЭлементов Предельное число файлов и каталогов, которое можно создать в корневом каталоге электронного диска. Это число может лежать в диапазоне от 2 до 1024 и округляется до ближайшего размера сектора. По умолчанию корневой каталог электронного диска не может содержать более 64 элементов. (Количество элементов в корневом каталоге нельзя задать, не указав при этом размеров диска и сектора.) Если диск указанного размера создать не удается, количество элементов в корневом каталоге будет ограничено 16. Ключи /E Создание электронного диска в дополнительной памяти. Драйвер RAMDrive может использовать дополнительную память лишь в том случае, если система это позволяет. Запуск диспетчера дополнительной памяти (например, HIMEM.SYS) должен предшествовать в файле CONFIG.SYS строке, загружающей RAMDRIVE.SYS. Если компьютер оборудован дополнительной памятью, лучше всего создавать электронный диск именно в ней. /A Создание электронного диска в отображаемой памяти. Драйвер RAMDrive может использовать отображаемую память лишь в том случае, если система это позволяет. Запуск диспетчера отображаемой памяти (например, EMM386, 386MAX, CEMM или QEMM) должен предшествовать в файле CONFIG.SYS строке, загружающей RAMDRIVE.SYS. SETVER.EXE ========== Этот драйвер загружает в память таблицу версий программ MS-DOS. Сам он загружается с помощью команды DEVICE или DEVICEHIGH в файле CONFIG.SYS. Таблица версий программ MS-DOS содержит имена программ и номера версий MS-DOS, для которых эти программы предназначены. Синтаксис DEVICE=[диск:][путь]SETVER.EXE Параметры [диск:][путь] Путь к файлу SETVER.EXE.